Variant Narrowing and Extreme Termination
نویسندگان
چکیده
For narrowing with a set of rules ∆ modulo a set of axioms B almost nothing is known about terminating narrowing strategies, and basic narrowing is known to be incomplete for B = AC. In this work we ask and answer the question: Is there such a thing as an extremely terminating narrowing strategy modulo B? where we call a narrowing strategy S enjoying appropriate completeness properties extremely terminating iff whenever any other narrowing strategy S′ enjoying the same completeness properties terminates on a term t, then S is guaranteed to terminate on t as well. We show that basic narrowing is not extremely terminating already for B = ∅, and provide a positive answer to the above question by means of a sequence of increasingly more restrictive variant narrowing strategies, called variant narrowing, variant narrowing with history, ∆,B–pattern narrowing with history, and ∆,B–pattern narrowing with history and folding, such that given a set ∆ of confluent, terminating, and coherent rules modulo B: (i) ∆,B–pattern narrowing with history (and folding) are strictly more restrictive than basic narrowing; (ii) ∆,B–pattern narrowing with history and folding is an extremely terminating strategy modulo B, which terminates on a term t iff t has a finite, complete set of minimal variants; (iii) ∆,B–pattern narrowing with history and folding terminates on all terms iff ∆ ∪B has the finite variant property; and (iv) ∆,B–pattern narrowing with history and folding yields a complete and minimal ∆ ∪ B-unification algorithm, which is finitary when ∆ ∪B has the finite variant property.
منابع مشابه
Folding Variant Narrowing and Optimal Variant Termination
If a set of equations E∪Ax is such that E is confluent, terminating, and coherent modulo Ax, narrowing with E modulo Ax provides a complete E∪Ax-unification algorithm. However, except for the hopelessly inefficient case of full narrowing, nothing seems to be known about effective narrowing strategies in the general modulo case beyond the quite depressing observation that basic narrowing is inco...
متن کاملUnification and Anti-unification modulo Equational Theories
Automated reasoning modulo an equational theory E is a fundamental technique in many applications. If E can be split as a disjoint union R ∪ Ax in such a way that R is a set of rewrite rules that are confluent, terminating, sort-decreasing, and coherent modulo a set of equational axioms Ax, it is well-known that narrowing with R modulo Ax provides a complete E-unification algorithm. However, na...
متن کاملModular Termination of Basic Narrowing
Basic narrowing is a restricted form of narrowing which constrains narrowing steps to a set of non-blocked (or basic) positions. Basic narrowing has a number of important applications including equational unification in canonical theories. Another application is analyzing termination of narrowing by checking the termination of basic narrowing, as done in pioneering work by Hullot. In this work,...
متن کاملTermination of Narrowing: Automated Proofs and Modularity Properties
In 1936, Alan Turing proved that the halting problem, that is, deciding whether a program terminates, is an undecidable problem for most practical programming languages. Even so, termination is so relevant that a vast number of techniques for proving the termination of programs have been researched in the recent decades. Term rewriting systems provide an abstract theoretical framework ideally s...
متن کاملModular termination of basic narrowing and equational unification
Basic narrowing is a restricted form of narrowing which constrains narrowing steps to a set of unblocked (or basic) positions. In this work, we study the modularity of termination of basic narrowing in hierarchical combinations of TRSs, which provides new algorithmic criteria to prove termination of basic narrowing. Basic narrowing has a number of important applications including equational uni...
متن کامل